typedef unsigned char *POINTER; 
typedef unsigned long int UINT4; 

typedef struct { 
  UINT4 state[4];        
  UINT4 count[2];      
  unsigned char buffer[64];                      
} MD5_CTX; 

extern void MD5Init ( MD5_CTX * context );
extern void MD5Update (MD5_CTX *context , unsigned char *input , unsigned int inputLen );
extern void MD5Final (unsigned char digest[16] , MD5_CTX *context );
